package com.ddyx.service;

import com.ddyx.model.FaceDetectResult;
import com.ddyx.model.FaceIdentifyResult;

/**
 * 人脸识别管理
 * 
 * @author zhongchzh
 *
 */
public interface IFaceRecognitionManager {

	/**
	 * 人脸检测
	 * 
	 * @param imagePath 图片路径
	 * @return
	 */
	FaceDetectResult detectFace(String imagePath);
	
	/**
	 * 人脸检测
	 * 
	 * @param imageData
	 * @return
	 */
	FaceDetectResult detectFace(byte[] imageData);
	
	/**
	 * 把人脸加入店铺人脸库
	 * 
	 * @param userId
	 * @param storeId
	 * @param encodeImage
	 */
	void addFace(String userId, String userName, String groupId, String encodeImage, boolean replace);
	
	/**
	 * 把人脸加入店铺人脸库
	 * @param userId
	 * @param userName
	 * @param groupId
	 * @param imageData
	 */
	void addFace(String userId, String userName, String groupId, byte[] imageData, boolean replace);
	
	/**
	 * 从店铺的人脸库查相似人脸图片
	 * 
	 * @param encodedImage
	 * @param shopId
	 * @return
	 */
	FaceIdentifyResult identifyFace(String encodedImage, String groupId);
	
	/**
	 * 从店铺的人脸库查相似人脸图片
	 * 
	 * @param imageData
	 * @param shopId
	 * @return
	 */
	FaceIdentifyResult identifyFace(byte[] imageData, String groupId);
}
